// 引入适配工具类
const adapter = require('../../utils/adapter.js');

Page({
  data: {
    // 适配相关数据
    adaptation: {
      scale: adapter.scale,
      scaleH: adapter.scaleH,
      systemInfo: adapter.systemInfo
    },
    // jkUrl:'https://kunszbq.cn/prod-api',
    jkUrl:'',
    // 搜索相关数据
    searchTypes: ['片区', '楼宇', '企业'],
    selectedSearchType: '片区',
    searchKeyword: '',
    // 搜索结果
    searchResults: []
  },

  onShow(){
    const app = getApp();
    console.log("app.globalData.hasLogin :",app.globalData.hasLogin );
    if(app.globalData.hasLogin == false)
      {
        wx.redirectTo({
              url: '/pages/login/login'
            });
          return;
      }
  },
  onLoad() {
      const app = getApp();
      console.log("app.globalData.hasLogin :",app.globalData.hasLogin );
      if(app.globalData.hasLogin == false)
      {
        wx.redirectTo({
              url: '/pages/login/login'
            });
          return;
      }
      this.setData({
      jkUrl:app.globalData.jkUrl
    });
    // 检查登录状态
    // const app = getApp();
    // if (!app.globalData.userInfo) {
    //   wx.redirectTo({
    //     url: '/pages/login/login'
    //   });
    //   return;
    // }
    // 页面加载时进行适配
    this.onSearch();
    this.adaptPage();
  },

  // 页面适配方法
  adaptPage() {
    console.log('设备信息:', this.data.adaptation.systemInfo);
    console.log('适配比例:', this.data.adaptation.scale);
    console.log('高度适配比例:', this.data.adaptation.scaleH);
    
    // 根据屏幕尺寸调整样式
    this.adjustStyles();
  },

  // 调整样式以适配不同屏幕
  adjustStyles() {
    // 可以根据需要动态调整样式
    const systemInfo = this.data.adaptation.systemInfo;
    
    // 例如，对于小屏幕设备调整字体大小
    if (systemInfo.windowWidth < 350) {
      // 在小屏幕上使用较小的字体
      console.log('小屏幕设备，调整字体大小');
    }
  },

  // 搜索类型改变
  onSearchTypeChange(e) {
    const selectedIndex = e.detail.value;
    const selectedType = this.data.searchTypes[selectedIndex];
    this.setData({
      selectedSearchType: selectedType,
      searchKeyword: '' // 清空搜索关键词
    });
    // 清空搜索结果
    this.setData({
      searchResults: []
    });
    this.onSearch() ;
    // 当选择片区时，调用API获取片区列表
  
  },

  // 搜索关键词输入
  onSearchInput(e) {
    this.setData({
      searchKeyword: e.detail.value
    });
  },

  // 执行搜索
  onSearch() {
    const keyword = this.data.searchKeyword;
    const searchType = this.data.selectedSearchType;
    
    // if (!keyword) {
    //   wx.showToast({
    //     title: '请输入搜索关键词',
    //     icon: 'none'
    //   });
    //   return;
    // }
    
    // 模拟搜索结果
    let searchResults = [];
    this.setData({
      searchResults: []
    });
    switch(searchType) {
    case '片区':
      wx.request({
        url: this.data.jkUrl+'/park/district/list',
        // url: 'http://localhost:8080/park/district/list',
        method: 'GET',
        data: {
          districtName: keyword
        },
        success: (res) => {
          console.log('获取片区列表成功:', res.data);
          // 假设API返回的数据格式与原模拟数据一致
          this.setData({
            searchResults: res.data.rows
             
          });
        },
        fail: (err) => {
          console.error('获取片区列表失败:', err);
          wx.showToast({
            title: '获取片区列表失败',
            icon: 'none'
          });
        }
      });
      break;

    case '楼宇':
      wx.request({
        url: this.data.jkUrl+'/park/housing/list',
        // url: 'http://localhost:8080/park/housing/list',
        method: 'GET',
        data: {
          housingName: keyword
        },
        success: (res) => {
          console.log('获取企业列表成功:', res.data);
            
          // 假设API返回的数据格式与原模拟数据一致
          this.setData({
            searchResults: res.data.rows
          });
        },
        fail: (err) => {
          console.error('获取楼宇列表失败:', err);
          wx.showToast({
            title: '获取楼宇列表失败',
            icon: 'none'
          });
        }
      });
      break;

    case '企业':
      wx.request({
        url: this.data.jkUrl+'/park/tenant/list',
        // url: 'http://localhost:8080/park/tenant/list',
        method: 'GET',
        data: {
          enterpriseName: keyword
        },
        success: (res) => {
          console.log('获取楼宇列表成功:', res.data);
            
          // 假设API返回的数据格式与原模拟数据一致
          this.setData({
            searchResults: res.data.rows
          });
        },
        fail: (err) => {
          console.error('获取楼宇列表失败:', err);
          wx.showToast({
            title: '获取楼宇列表失败',
            icon: 'none'
          });
        }
      });
      break;
    }
    
    this.setData({
      searchResults: searchResults
    });
  },
  
  // 点击搜索结果项
  onResultItemTap(e) {
    const item = e.currentTarget.dataset.item;
    const searchType = this.data.selectedSearchType;
    
    // 根据不同类型跳转到不同页面
    switch(searchType) {
    case '片区':
      wx.navigateTo({
        url: `/pages/areaOverview/areaOverview?id=${item.id}&name=${item.districtName}&addr=${item.remark}`
      });
      break;
    case '楼宇': 
      wx.navigateTo({
        url: `/pages/webview/webview?url=https://kunszbq.cn/roomListPic&id=${item.id}`
      });
      break;
    case '企业':
      // 模拟跳转动画效果
      // wx.navigateTo({
      //   url: `/pages/webview/webview?url=http://localhost:81/enterpriseDetail?id=${item.id}`,
      //   animationType: 'slide-in-bottom',
      //   animationDuration: 300
      // });
      // break;
      wx.navigateTo({
        url: `/pages/tenant/tenant?name=${item.enterpriseName}`
      });
      break;
    }
  }
});